package com.yalu.file;

import com.baidu.aip.ocr.AipOcr;
import org.json.JSONObject;

import java.util.HashMap;

/**
 * OCR识别
 *
 * @author star
 * @date 2022-07-17
 */
public class OcrRead {

    public static final String APP_ID = "26725039";
    public static final String API_KEY = "dcscZlavQTvXBDdIZImW4dpX";
    public static final String SECRET_KEY = "20BbgI4vBbVvOo2P7uEZSPd4vkPMmrV0";

    public static void main(String[] args) {
        // 初始化一个AipOcr
        AipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY);

        // 可选：设置网络连接参数
        client.setConnectionTimeoutInMillis(2000);
        client.setSocketTimeoutInMillis(60000);

        // 可选：设置log4j日志输出格式，若不设置，则使用默认配置
        // 也可以直接通过jvm启动参数设置此环境变量
        System.setProperty("aip.log4j.conf", "path/to/your/log4j.properties");

        // 调用接口
        String path = "D:\\yalu\\20221031-中天-PI.pdf";
        JSONObject res = client.basicAccurateGeneral(path, new HashMap<>());
        System.out.println(res.toString(2));

    }

//  public String  readPdf(){
//        try{
//        PDDocument document = PDDocument.load(file);
//        //创建pdf文本获取对象PDFTextStripper
//        PDFTextStripper pdfStripper = new PDFTextStripper();
//        //获取pdf中所有信息，text中包含的就是当前pdf文档中所有信息
//        String text = pdfStripper.getText(document);
//        System.out.println(text);
//        //读取pdf 图片信息
//        PDImageXObject ximage = new PDImageXObject(document);
//        PDPageTree pages = document.getPages();
//        PDPage page = document.getPage(4);
//        PDResources resources = page.getResources();
//        Iterable<COSName> cosNames = resources.getXObjectNames();
//        if (cosNames != null) {
//            Iterator<COSName> cosNamesIter = cosNames.iterator();
//            while (cosNamesIter.hasNext()) {
//                COSName cosName = cosNamesIter.next();
//                if (resources.isImageXObject(cosName)) {
//                    PDImageXObject Ipdmage = (PDImageXObject) resources.getXObject(cosName);
//                    BufferedImage image = Ipdmage.getImage();
//                    execute(image);
//                }
//            }
//        }}catch (Exception e){
//
//        }
//        return null;
//    }
}
